/*
 * Filename: Combination.cpp
 * Author: luozi
 * Date: 2024-05-23
 * Description: This cpp file is used to test two design 
 *              examples of Engineer and Software Engineer 
 *              implemented with combination.
 * 
 * Copyright (c) 2024, xx-luozi-xx
 * All rights reserved.
 * 
 * Version: 1.0.0
 * 
 * Code Repository Links: https://gitee.com/xx_luozi_xx/se_lab_240523
 */

#include "Combi_Engineer.h"
#include "Combi_Coding_Work.h"
#include "Combi_General_Work.h"

#include <iostream>
#include <vector>

int main(){
    std::vector<Combi_Engineer> engineers;

    engineers.push_back(Combi_Engineer(new Combi_General_Work));
    engineers.push_back(Combi_Engineer(new Combi_Coding_Work));
    
    std::cout << "Implementing with Combination:" << std::endl;
 
    for(auto itr : engineers){
        std::cout << itr.work() << std::endl;
    }

    return 0;
}